package plugin.live.redis.list;

import java.util.List;

import com.jfinal.plugin.redis.Cache;
import com.jfinal.plugin.redis.Redis;

import lombok.Data;

/**
 * 对数据排序
 */
@Data
public class RedisList<T> {
	private int sizeMax = 100;
	
	public void addAfter(T obj) {
		if (cache.llen(key) > sizeMax) {
			cache.lpop(key);// 移除第一
		}
		cache.rpush(key, obj);// 新增到最后
	}
	public void addBefore(T obj) {
		if (cache.llen(key) > sizeMax) {
			cache.rpop(key);// 移除第一
		}
		cache.lpush(key, obj);// 新增到最前
	}
	
	public List<T> getList() {
		List<T> lrange = cache.lrange(key, 0, sizeMax);
		return lrange;
	}
	

	private String key = "";
	private Cache cache;

	public RedisList(String key,int sizeMax) {
		super();
		cache = Redis.use();
		this.key = key;
		this.sizeMax = sizeMax;
	}
}
